/**
 * 用户相关工具函数
 */

/**
 * 获取用户的visitor_uuid
 * @returns visitor_uuid字符串，如果不存在则返回null
 */
export const getVisitorUuid = (): string | null => {
  try {
    const userDataStr = localStorage.getItem('userData');
    if (!userDataStr) {
      // console.log('未找到用户数据');
      console.error('not found userData');
      return null;
    }

    const userData = JSON.parse(userDataStr);
    const uuid = userData.visitor_uuid;

    if (!uuid) {
      // console.log('未找到用户UUID');
      console.error('not found visitor_uuid');
      return null;
    }

    return uuid;
  } catch (error) {
    // console.error('获取visitor_uuid失败:', error);
    console.error('get visitor_uuid failed', error);
    return null;
  }
};

/**
 * 获取完整的用户数据
 * @returns 用户数据对象，如果不存在则返回null
 */
export const getUserData = (): any | null => {
  try {
    const userDataStr = localStorage.getItem('userData');
    if (!userDataStr) {
      return null;
    }
    return JSON.parse(userDataStr);
  } catch (error) {
    // console.error('获取用户数据失败:', error);
    console.error('get user data failed', error);
    return null;
  }
};

/**
 * 根据用户的vip_live状态决定跳转路径
 * @returns 应该跳转的路径：如果vip_live为null则跳转到'/subscriptions'，否则跳转到'/settings'
 */
export const getSubscriptionPath = (): string => {
  try {
    const userData = getUserData();
    if (!userData) {
      // console.log('未找到用户数据，默认跳转到subscriptions');
      console.error('not found userData');
      return '/subscriptions';
    }

    const vipLive = userData.vip_live;

    // 如果vip_live为null或undefined，跳转到subscriptions页面
    if (vipLive === null || vipLive === undefined) {
      return '/subscriptions';
    }

    // 否则跳转到settings页面
    return '/settings';
  } catch (error) {
    // console.error('检查vip_live状态失败:', error);
    console.error('check vip_live status failed', error);
    // 发生错误时默认跳转到subscriptions
    return '/subscriptions';
  }
}; 